class TreeNode:
    def __init__(self,val=0,left=None,right=None):
        self.val=val
        self.left=left
        self.right=right
#二叉搜索树的基本概念和性质
#它或者是一棵空树，或者是具有下列性质的二叉树：
# 若它的左子树不空，则左子树上所有结点的值均小于它的根结点的值；
# 若它的右子树不空，则右子树上所有结点的值均大于它的根结点的值；
# 它的左、右子树也分别为二叉排序树。
root=TreeNode(4)
root.left=TreeNode(2)
root.right=TreeNode(7)
root.left.left=TreeNode(1)
root.left.right=TreeNode(3)
def searchBST(root,val):
    #先判断树是不是空树
    if root==None:
        return None
    #操作指针等于根节点
    processPointer=root
    while processPointer!=None:
        if processPointer.val==val:
            return processPointer
        elif processPointer.val>val:
            processPointer=processPointer.left
        else:
            processPointer=processPointer.right
    return None
print(searchBST(root,0))